What are vector graphics and why should I care?

Pixelated (bitmap) images are fantastic at conveying photorealism, but they are not always the best choice for displaying detailed and consistent graphical information:

So what’s so special about vectors?

Bitmap image of a zebra finch

Zebra Finch Male
Bitmap image of a zebra finch
Zebra Finch Male Zoomed
scaled bitmap image of a zebra finch

Vector drawing of a zebra finch

Zebra Finch Male
Vector drawing of a zebra finch
Zebra Finch Male Zoomed
scaled vector drawing of a zebra finch
What kind of things can I create with a vector graphics software?

Almost any type of graphic you can imagine.. but most relevant to us as scientists:

  • scientific drawings/diagrams and schematics
  • Graphical abstracts
  • Posters
  • Graphics for plot illustration
  • Plot edits and annotations
  • Accurate plot simplification (for science communication, teaching or presentations)
  • etc…etc…

What’s the catch?

It requires a little bit of practice to get to grips with vector graphics software, but you don’t need to be an artist or designer to make use of these tools. There are some considerations to keep in mind when using vector graphics:

File types

  • Most commonly you’ll see .svg (Scalable Vector Graphics). (Svg’s are XML based which makes them easy to render in most web browsers for quick viewing!)
  • PDFs can also be vector-based (but not always). Think about how when you zoom into a pdf file the text always remains crisp and clear!
  • Another common file type is .eps (Encapsulated PostScript). .EPS in my experience is a favourite of journals because it’s so easily editable and compatible with most design software.

Tip! If you’re working in Illustrator, files will be .ai natively, and if you’re working in Inkscape it will be .svg. I recommend you always keep a copy of your file in the native format of the software it was created in, and save any exports as a new version, just incase something goes wrong down the line. It’s easy to export a .ai file into a .eps, but not necessarily the other way around…

Reproducibility

You can easily save plots from R as vectors that can then be edited in a vector graphics software. In RStudio you can use ggsave, in vscode you can save plots directly as svg files from the viewing pane.

It’s important to bear in mind though, that the more heavily manually edited a plot is, the less reproducible it is. Before editing a plot it’s worth asking yourself whether a coding solution might be a better option first!

Colour models

The two main types of colour models are RGB (Red, Green, Blue) (used primarily for digital display) and CMYK (Cyan, Magenta, Yellow, Black) (used primarily for print). It’s important to consider the colours of your work before you start. Just remember that a graphic produced with RGB colours will look different when printed and visa versa.

RGB and CMYK colour modes
RGB and CMYK colour modes


Which to choose for both print and screen? There isn’t an obvious answer but I usually create the image in RGB first because of the wider choice of colours available for digital displays. Just remember that before printing, you might want to convert the image to CMYK to ensure accurate colour reproduction.

Note! While Illustrator has a built in engine for converting between colour models, in Inkscape it’s a bit more tricky, and you might have to use a different software - I think Scribus is the most commonly used free option.

Which software should I use?

There are countless options! I’ve dabbled in a few but the two most popular are probably Inkscape and Illustrator. They both have their pros and cons and I’ve listed a few below:

Inkscape Illustrator
Very accessible (free and open source) with community driven updates Requires a licences subscription with Adobe (free for UoS staff and students upon request, but expensive otherwise)
.svg native format. May struggle with some complex file types .ai native format, more flexible at handling complex file types. Seamless workflow with other Adobe software
RGB native colour model, external software needed for colour model conversion RGB or CMYK colour models easily specified with a built in colour model conversion engine
Can have stability issues, but has fewer system requirements Pretty stable, however can require a huge amount of RAM for big files and won’t run well on old/certain systems
Lacks some tools and features, however realistically it has everything you need for simple graphics and posters Has a lot of specialised tools and functions. The industry standard
Many community resources out there for learning, with a shallower learning curve than Illlustrator Steeper learning curve, so not as suitable for beginners, fewer community resources

Introduction to Inkscape

Note this is not an exhaustive tutorial, but just a list of the most important tools and features I think you’ll need to get started

Setting up document properties:

  • Page format
  • Page orientation
  • Guides (create guides around page is handy)
  • Metadata
  • Licence (if needed)
  • Resize to content (useful to remember this feature but don’t worry about it for now)

Moving about:

  • Zoom in and out either with the zoom tool (bottom right), or ctrl + scroll
  • There are also some useful quick zoom tools in the commands bar on the right (e.g. zoom to page, zoom to selection, zoom centre view etc)
  • Drag the page around the page by pressing the scroll wheel, holding the spacebar, or ctrl/shift + right click
  • Rotate the page with the rotate tool (bottom right under the palette)

The main interface:

Toolbox: Tool selection

Working page area: You can use the canvas outside but it won’t be rendered in the final export

Docking area: Dialogs for specific tool functions

Commands bar: Quick access to common commands

Snap controls: Useful for aligning objects but can be irritating. I recommend turning snapping off to start with

Palette: Basic usage for changing object fill (shift + click for stroke/outline). Change palette on the right

Tool control bar: More adjustable options for the selected tool

Layers

Future you will thank you for taking the time to organise objects into layers!

You can shift to select multiple objects, then group them (right click + group) to move and adjust objects together, and gather them under the same layer controls.

Key tools

There are currently around 23 primary tools in Inkscape, but you’re not likely to use all of them (for now). Only a few are really necessary to get started. I’ll show you the tools I’ve found most useful.

  • Selector tool: The primary tool you’ll use to navigate your workspace, move, rotate, scale and select objects.

  • Node tool: You’ll use this to edit the shape of objects. I’ll talk more about nodes below

  • Shape tools: Quickly create rectangles, circles, stars and polygons. Use the tool control bar for more options

  • Pen tool: You’ll use this to draw precise lines and shapes by hand. It takes a little work to get the hang of, but once you do you’ll find it the most versatile and useful tool at your disposal.

  • Text tool: You can guess what this does. You can change the font, size, colour, alignment and more in the text dialog in the docking area.

  • Gradient tool: This one you might not use as much, but it’s a nice way to add some depth to your work.

  • Dropper and bucket tools: You’ve probably used these in Paint, they provide quick and easy ways to change the colour of objects

  • Connector tool: This is possibly another slightly obscure tool, but it’s useful for drawing straight lines, flow charts and diagrams

Anatomy of an object

Adjusting object shapes with the node tool

Nodes Image
  • In vector graphics, nodes are individual points on a path that defines its shape and can be manipulated through vector graphics software
  • Use the node tool to access the nodes of an object/path.
  • You can directly move the node to change the object's shape, or adjust the curvature using the node handles.
  • Double-click to add nodes, delete to remove them.
  • Join nodes with other nodes, or break node paths using the node tools in the tool control bar.
  • Adjust the shape of lines around nodes by using the corner or auto-smoothing tools in the tool control bar.

Moving and resizing objects

Object Anatomy Image
  • An object can be easily resized or rotated by clicking in the object bounding box, once for resizing, twice for rotation.
  • Press ctrl to keep the aspect ratio when resizing, and shift to rotate in 15 degree increments.
  • Double click to access the text box adjustments. This will appear red if the text goes outside the limits of the text box.
  • The text itself can also be edited in the text dialog in the docking area.

Adjust object properties

Docking options Image
  • ctrl + shift + F to bring up the object fill and stroke options in the docking area.
  • Quickly change object fill using the colour palette bar at the bottom.
  • Quickly change object stroke using the colour palette bar at the bottom using shift when selecting.
  • Remove outline or fill entirely by clicking the X bottom left of the palette (or in fill/stroke options in the docking area).

Tip! Each node on a path needs to be calculated and rendered by the software. The more nodes your shape has, the more complex it becomes and the heavier the load on your system. Past a certain point this can create significant lag (particularly in Inkscape), so it’s best to keep your shapes as simple as possible. The simplify tool can automatically reduce the number of nodes in an overly complex object. Try this using ctrl + L on a selected object and see how it responds. You can also manually remove excess nodes. Learning how to use the pen tool properly is a great way to minimise excessive node use (more on this later).

Let’s make a basic poster template!

1. Set up a new document

Poster Properties Image
  • File > Document Properties
  • Under the Display tab, Set the page size.
  • Under the Display tab, set the page orientation.
  • Under the Guides tab, you can create some guides around the page if you like (not essential). You can add new guides easily using the ruler later if needed.
  • Under the Metadata tab, add some deets (I would probably at least add your name and the date).
  • Under the Licence tab, you can add a licence if you want to share your work.

2. create a background

Poster Template Step 2 Image
  • Add a new layer (numerous ways, easiest is just Layer > Add Layer, or through the Layers and Objects tab in the docking area), give it a name.
  • Enable snapping, and create a background using the rectangle tool, drag it to fill the page and give it a nice colour.
  • This is a good time to check your colour model is set to CMYK, Do this in the Fill and Stroke tab in the docking area.
  • Lock the layer (click the padlock icon) so you don't accidentally move it.
  • If you want to be fancy, you can give your background a gradient, just give each point on the gradient line a different colour, and play around with the gradient options in the docking area

3. Add some content boxes

Poster Template Step 3 Image
  • Add a new layer for text and figure boxes, make sure this new layer sits 'above current'.
  • Disable snapping and add some boxes using the shape tool. ctrl + D to duplicate any shapes you like.
  • Mess about with Align and Distribute in the docking area, which can help you position your boxes evenly.
  • Tip: You can round the edges of a shape by pulling the circular node on the top right corner (node selection tool).
  • Tip: There are loads of options for mucking about with shape paths in the 'Path' tab in the menu bar. I've used the 'Difference' option to illustrate how you can use one shape to cut a hole out of another.
  • Tip: There are loads of filter options for shapes. I have illustrated the use of drop shadows here. See the 'Filters' tab in the menu bar.

4. Add some sample text

Poster Template Image
  • Create a text box using the text tool, and find the text tab in the docking area.
  • Type some text, adjust the font and size. You can also set it as default to keep it consistent across the document.
  • If you notice your text looks a bit clumpy, it might have a stroke effect on it, try removing that in Object Stroke and Fill, or in the palette (shift click on the X).

5. Save the template and practice exporting

Exporting Image
  • File >Save template (add some informative information here). I also recommend keeping an svg copy because the template will only be available on your local computer.
  • File >Export (or find this tab in the docking area).
  • Choose Document for now (you can mess about with exporting only selected objects later).
  • Choose document type and rasterisation (e.g. a 300 or 600 dpi pdf)
  • Ta da! You have a cute little poster template :D
  • Next time you want to make a poster, you can select File > New Document From Template > Custom and select your template from the list.

Tip! If you like the settings you applied to one object and want to apply it to other objects, just select the object and copy it with ctrl + C it, then select the object you want to apply the settings to and use ctrl + shift + V. This will apply the colour, stroke, font and any filters or other attributes to the new object.

Become a pen tool pro

Using the pen tool for drawing straight lines

PenTool1 Image
  • I have found it helpful to practice tracing existing shapes to get the hang of this tool. Create a rectangle with the shape tool to start with.
  • Left click in a corner to place your first node.
  • Move the mouse to the next corner and left click again to place your second node.
  • Repeat for the third corner and finally join up your lines by clicking on the final node.
  • Delete the original shape and admire your sensational artisan rectangle.

Using the pen tool for drawing curves

PenTool2 Image
  • This time, we need to define the handles of the node to determine the curvature of our line.
  • Try placing a node but this time keep your mouse pressed and move it slightly to drag the handle.
  • Notice how the shape of your next line has changed.
  • A good way to understand how this works is to practice tracing over a circle!
  • There are also some useful resources for practicing. I like this game, it is designed for Illustrator so the controls are slightly different, but the tool functions the same.

Creating more complex shapes

PenTool3 Image
  • Once you've mastered the basics you can have a look at creating some more complex shapes.
  • Tip: If you make a mistake, simply delete the last node and try again.
  • Tip: To retain the shape of your previous line, but determine a new handle for the next, hold Shift while moving a handle.
  • Tip: Use the pen tool in combination with the shape tool to easily create complex shapes, use Paths > Union to join shapes.
  • Tip: If you want to customise the nodes of a shape, use Path > Object to path. Drag nodes or lines to change them

Notes on exporting your work